// 管理后台通用脚本

// 检查登录状态
function checkLogin() {
    const token = localStorage.getItem('adminToken');
    if (!token) {
        // 未登录，跳转到登录页
        window.location.href = './login-Manager.html';
        return false;
    }
    return true;
}

// 设置用户信息
function setUserInfo() {
    const userInfo = JSON.parse(localStorage.getItem('adminUserInfo') || '{}');
    const userNameElement = document.querySelector('.admin-user span');
    if (userNameElement && userInfo.username) {
        userNameElement.textContent = userInfo.nickname || userInfo.username;
    }
}

// 处理用户下拉菜单
function setupUserDropdown() {
    const userDropdown = document.getElementById('userDropdown');
    const userElement = document.querySelector('.admin-user');
    
    if (userElement && userDropdown) {
        // 点击用户头像显示/隐藏下拉菜单
        userElement.addEventListener('click', function(e) {
            e.stopPropagation();
            userDropdown.classList.toggle('show');
            
            // 设置下拉菜单位置
            const rect = userElement.getBoundingClientRect();
            userDropdown.style.top = (rect.bottom + 5) + 'px';
            userDropdown.style.right = (window.innerWidth - rect.right) + 'px';
        });
        
        // 点击页面其他地方关闭下拉菜单
        document.addEventListener('click', function() {
            userDropdown.classList.remove('show');
        });
        
        // 阻止下拉菜单内部点击事件冒泡
        userDropdown.addEventListener('click', function(e) {
            e.stopPropagation();
        });
    }
    
    // 处理退出登录
    const logoutBtn = document.querySelector('#userDropdown .dropdown-item[href="./login-Manager.html"]');
    if (logoutBtn) {
        logoutBtn.addEventListener('click', function(e) {
            e.preventDefault();
            logout();
        });
    }
}

// 退出登录
function logout() {
    // 调用退出登录API
    if (API && API.admin && API.admin.logout) {
        API.admin.logout()
            .then(() => {
                // 无论API调用成功与否，都清除本地存储并跳转
                clearUserData();
            })
            .catch(error => {
                console.error('退出登录失败:', error);
                clearUserData();
            });
    } else {
        // 如果API不可用，直接清除数据
        clearUserData();
    }
}

// 清除用户数据并跳转
function clearUserData() {
    localStorage.removeItem('adminToken');
    localStorage.removeItem('adminUserInfo');
    window.location.href = './login-Manager.html';
}

// 处理侧边栏折叠
function setupSidebar() {
    const menuToggle = document.querySelector('.menu-toggle');
    const adminContainer = document.querySelector('.admin-container');
    
    if (menuToggle && adminContainer) {
        menuToggle.addEventListener('click', function() {
            adminContainer.classList.toggle('sidebar-collapsed');
        });
    }
}

// 页面加载完成后执行
document.addEventListener('DOMContentLoaded', function() {
    // 检查登录状态
    if (!checkLogin()) return;
    
    // 设置用户信息
    setUserInfo();
    
    // 设置用户下拉菜单
    setupUserDropdown();
    
    // 设置侧边栏
    setupSidebar();
});